package base;

import java.math.BigDecimal;

public class Demo03 {
    public static void main(String[] args) {
        //进制 二进制  十进制  八进制0 十六进制0x
        int i = 10;
        int i1 = 010;
        int i2 = 0x10;
        System.out.println(i);
        System.out.println(i1);
        System.out.println(i2);
        System.out.println("*********************************************************");
        /*10 8 16*/

        //*************************************************************
        //浮点型扩展  银行业务怎么表示？
        //BigDecimal 数学工具类
        //*************************************************************
        //浮点数的问题
        //float 有限 离散 舍入误差大  大约  接近但是不等于
        //double
        //不要使用浮点数进行比较
        float f = 0.1f; //0.1
        double d = 1.0/10;//0.1
        System.out.println(f==d);//false

        float d1 = 12165465456121f;
        float d2 = d1+1;
        System.out.println(d2);
        System.out.println(d1==d2); //true
        System.out.println("*********************************************************");

        //*************************************************************
        //字符型扩展
        //*************************************************************
        char c1 = 'A';
        char c2 = '中';
        System.out.println(c1);
        System.out.println((int)c1);//强制转换
        System.out.println(c2);
        System.out.println((int)c2);
        //所有的字符本质是数字
        //编码 unicode
        char c3 = '\u0061';
        System.out.println(c3);

        System.out.println("*********************************************************");

        //*************************************************************
        //转义字符
        //*************************************************************
        System.out.println("Hello\tWorld"); // \t 制表符
        System.out.println("Hello\nWorld"); // \n 制表符
        System.out.println("Hello\0World");//
        System.out.println("Hello\"World");
        System.out.println("Hello\\World");
    }
}
